/*
 * Crossroad_Slave.h
 *
 * Created: 6/9/2013 10:13:00 PM
 *  Author: Crossfire
 */ 


#ifndef CROSSROAD_SLAVE_H_
#define CROSSROAD_SLAVE_H_

#include <avr/io.h>
#include <util/delay.h>

#define TJUNCTION 0x20

int _state, _delay;
uint8_t _crossroad[37][6], _byteA, _byteB, _byteC, _byteD;
unsigned char recv_data;
int _mode = 0;
uint8_t _default[37][6] =
{
	{1,1,1,1,1,1},
	{1,3,1,1,3,1},
	{1,2,1,1,2,1},
	{1,1,3,1,1,3},
	{1,1,2,1,1,2},
	{3,1,1,1,1,1},
	{2,1,1,1,1,1},
	{1,1,1,3,1,1},
	{1,1,1,2,1,1},
	{1,3,3,1,1,1},
	{1,2,2,1,1,1},
	{1,1,1,1,3,3},
	{1,1,1,1,2,2},
	{1,3,1,1,2,1},
	{1,3,2,1,1,1},
	{1,1,1,1,3,2},
	{1,2,1,1,3,1},
	{1,1,1,1,2,3},
	{1,2,3,1,1,1},
	{1,1,3,1,1,2},
	{1,2,1,1,1,1},
	{1,1,2,1,1,1},
	{1,1,1,1,2,1},
	{1,1,1,1,1,2},
	{1,3,1,1,1,1},
	{1,1,3,1,1,1},
	{1,1,1,1,3,1},
	{1,1,1,1,1,3},
	{1,1,2,1,3,1},
	{1,3,1,1,2,1},
	{1,1,3,1,1,2},
	{1,1,1,1,3,2},
	{1,2,3,1,1,1},
	{1,1,2,1,1,3},
	{1,2,1,1,3,1},
	{1,3,2,1,1,1},
	{1,1,1,1,2,3}
};

int main(void);
void parse_data_crossroad();
void TWI_init_slave(void);
void TWI_read_slave(void);
void TWI_match_read_slave(void);
void set_stoplichten(int mode);
int get_sensors();
void set_state();
#endif /* CROSSROAD_SLAVE_H_ */